package com.bosssoft.cloud.wechat.core.bean.param.portal;

import com.alibaba.fastjson.annotation.JSONField;
import com.bosssoft.cloud.wechat.core.bean.WxBaseMsg;
import com.bosssoft.cloud.wechat.infrastructure.annotation.XmlRoot;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * @author wcy create on 2021/6/17 18:23 下午
 */

@Data
@EqualsAndHashCode(callSuper = true)
@XmlRoot
public class WxMsgParam extends WxBaseMsg {

    private static final long serialVersionUID = -3586245291677274914L;
    /*
    ++++++++++++++++++++++++++++ common ++++++++++++++++++++++++++++
     */

    /*
    ++++++++++++++++++++++++++++ 事件 ++++++++++++++++++++++++++++
     */

    /**
     * 事件类型，subscribe(订阅)、unsubscribe(取消订阅)
     */
    @JSONField(name = "Event")
    private String event;
    /**
     * 事件KEY值，qrscene_为前缀，后面为二维码的参数值
     */
    @JSONField(name = "EventKey")
    private String eventKey;

    /*
    ++++++++++++++++++++++++++++ 消息common ++++++++++++++++++++++++++++
     */

    /**
     * 消息id，64位整型
     */
    @JSONField(name = "MsgId")
    private String msgId;

    /*
    ++++++++++++++++++++++++++++ 文本消息 ++++++++++++++++++++++++++++
     */

    /**
     * 文本消息内容
     */
    @JSONField(name = "Content")
    private String content;

    /*
    ++++++++++++++++++++++++++++ media消息 ++++++++++++++++++++++++++++
     */

    private String picUrl;

    private String mediaId;


    private String menuId;


    /*
    ++++++++++++++++++++++++++++ 模板消息 ++++++++++++++++++++++++++++
     */

    /**
     * 此MsgID用于发送模板消息，和上面的接收普通消息MsgId不一样
     */
    @JSONField(name = "MsgID")
    private String msgID;

    @JSONField(name = "Status")
    private String status;
}
